﻿#region File Description
//  XAEnima 
//  License: GNU/GPL
//  Developer: Federico Leonardo Motta
//  File description: GUI
#endregion

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;

namespace XAEnima.gui
{

    public class Item : GameComponent
    {
        int id;
        String name;
        Vector2 position;
        Vector2 dimension;
        Texture2D skin;
        Color bgColor;
        Color fontColor;
        bool select;
        bool isPressed;
        bool isActive;

        public Item(Game game)
            : base(game)
        {
            select = false;
            isPressed = false;
            isActive = true;
        }

        public Item(Game game, String n)
            : base(game)
        {
            name = n;
            select = false;
            isPressed = false;
            isActive = true;
            }

        public Item(Game game, String n, Vector2 p)
            : base(game)
        {
            name = n;
            position = p;
            select = false;
            isPressed = false;
            isActive = true;
        }

        public Item(Game game, String n, Vector2 p,Vector2 d)
            : base(game)
        {
            name = n;
            position = p;
            dimension = d;
            select = false;
            isPressed = false;
            isActive = true;
        }

        public Item(Game game, String n, Vector2 p, Texture2D s)
            : base(game)
        {
            name = n;
            position = p;
            skin = s;
            select = false;
            isPressed = false;
            isActive = true;
        }

        public String Name {
            set { name = value; }
            get { return name; }
        }

        public Vector2 Position
        {
            set { position = value; }
            get { return position; }
        }

        public Vector2 Dimension
        {
            set { dimension = value; }
            get { return dimension; }
        }

        public Texture2D Skin
        {
            set { skin = value; }
            get { return skin; }
        }

        public Color BgColor
        {
            set { bgColor = value; }
            get { return bgColor; }
        }

        public Color FontColor
        {
            set { fontColor = value; }
            get { return fontColor; }
        }

        public int ID {
            set { id = value; }
            get { return id; }
        }

        public bool Select {
            set { select = value; }
            get { return select; }
        }

        public bool IsPressed
        {
            set { isPressed = value; }
            get { return isPressed; }
        }

        public bool IsActive
        {
            set { isActive = value; }
            get { return isActive; }
        }
    }
}
